package com.dragon.modules.yuegou.entity.coupon;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.coupon.MerchantCouponGrantType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 商户优惠券发放（商户发放优惠券给会员）实体类<br>
 * 对应的表为：coup_merchant_coupon_grant<br>
 *
 * @author pbuilder generated
 * @date 2021-05-26 18:57:47
 * @company sgy
 * @version 2.0
 */
@TableName("coup_merchant_coupon_grant")
@ApiModel(description = "商户优惠券发放（商户发放优惠券给会员）")
public class MerchantCouponGrantEntity {

	/** 发放记录ID */
	@ApiModelProperty("发放记录ID")
	protected String id;

	/** [枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT */
	@ApiModelProperty("[枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT")
	protected MerchantCouponGrantType type;

	/** 商户优惠券ID */
	@ApiModelProperty("商户优惠券ID")
	protected String merchantCouponId;

	/** 停车券申请ID */
	@ApiModelProperty("停车券申请ID")
	protected String parkApplyId;

	/** 商户ID（冗余） */
	@ApiModelProperty("商户ID（冗余）")
	protected String merchantId;

	/** 会员ID */
	@ApiModelProperty("会员ID")
	protected String memberId;

	/** 优惠券ID */
	@ApiModelProperty("优惠券ID")
	protected String couponId;

	/** 创建人（优惠券发放人） */
	@ApiModelProperty("创建人（优惠券发放人）")
	protected String createdBy;

	/** 创建时间（优惠券发放时间） */
	@ApiModelProperty("创建时间（优惠券发放时间）")
	protected LocalDateTime createdTime;

	/**
	 * 构造一个空商户优惠券发放（商户发放优惠券给会员）实体对象
	 */
	public MerchantCouponGrantEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个商户优惠券发放（商户发放优惠券给会员）实体对象
	 *
	 * @param other 其它对象
	 */
	public MerchantCouponGrantEntity(MerchantCouponGrantEntity other){
		super();
		this.id = other.id;
		this.type = other.type;
		this.merchantCouponId = other.merchantCouponId;
		this.parkApplyId = other.parkApplyId;
		this.merchantId = other.merchantId;
		this.memberId = other.memberId;
		this.couponId = other.couponId;
		this.createdBy = other.createdBy;
		this.createdTime = other.createdTime;
	}


	/**
	 * 获取发放记录ID
	 *
	 * @return id 发放记录ID
	 */
	public String getId() {
		return id;
	}

	/**
	 * 设置发放记录ID
	 *
	 * @param id 发放记录ID
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取[枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT
	 *
	 * @return type [枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT
	 */
	public MerchantCouponGrantType getType() {
		return type;
	}

	/**
	 * 设置[枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT
	 *
	 * @param type [枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT
	 */
	public void setType(MerchantCouponGrantType type) {
		this.type = type;
	}

	/**
	 * 获取商户优惠券ID
	 *
	 * @return merchantCouponId 商户优惠券ID
	 */
	public String getMerchantCouponId() {
		return merchantCouponId;
	}

	/**
	 * 设置商户优惠券ID
	 *
	 * @param merchantCouponId 商户优惠券ID
	 */
	public void setMerchantCouponId(String merchantCouponId) {
		this.merchantCouponId = merchantCouponId;
	}

	/**
	 * 获取停车券申请ID
	 *
	 * @return parkApplyId 停车券申请ID
	 */
	public String getParkApplyId() {
		return parkApplyId;
	}

	/**
	 * 设置停车券申请ID
	 *
	 * @param parkApplyId 停车券申请ID
	 */
	public void setParkApplyId(String parkApplyId) {
		this.parkApplyId = parkApplyId;
	}

	/**
	 * 获取商户ID（冗余）
	 *
	 * @return merchantId 商户ID（冗余）
	 */
	public String getMerchantId() {
		return merchantId;
	}

	/**
	 * 设置商户ID（冗余）
	 *
	 * @param merchantId 商户ID（冗余）
	 */
	public void setMerchantId(String merchantId) {
		this.merchantId = merchantId;
	}

	/**
	 * 获取会员ID
	 *
	 * @return memberId 会员ID
	 */
	public String getMemberId() {
		return memberId;
	}

	/**
	 * 设置会员ID
	 *
	 * @param memberId 会员ID
	 */
	public void setMemberId(String memberId) {
		this.memberId = memberId;
	}

	/**
	 * 获取优惠券ID
	 *
	 * @return couponId 优惠券ID
	 */
	public String getCouponId() {
		return couponId;
	}

	/**
	 * 设置优惠券ID
	 *
	 * @param couponId 优惠券ID
	 */
	public void setCouponId(String couponId) {
		this.couponId = couponId;
	}

	/**
	 * 获取创建人（优惠券发放人）
	 *
	 * @return createdBy 创建人（优惠券发放人）
	 */
	public String getCreatedBy() {
		return createdBy;
	}

	/**
	 * 设置创建人（优惠券发放人）
	 *
	 * @param createdBy 创建人（优惠券发放人）
	 */
	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	/**
	 * 获取创建时间（优惠券发放时间）
	 *
	 * @return createdTime 创建时间（优惠券发放时间）
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}

	/**
	 * 设置创建时间（优惠券发放时间）
	 *
	 * @param createdTime 创建时间（优惠券发放时间）
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	public String toString() {
		return new StringBuilder().append("MerchantCouponGrantEntity{").
				append("id=").append(id).
				append(",type=").append(type).
				append(",merchantCouponId=").append(merchantCouponId).
				append(",parkApplyId=").append(parkApplyId).
				append(",merchantId=").append(merchantId).
				append(",memberId=").append(memberId).
				append(",couponId=").append(couponId).
				append(",createdBy=").append(createdBy).
				append(",createdTime=").append(createdTime).
				append('}').toString();
	}

	/**
	 * 复制对象
	 *
	 * @return 复制后的新实体对象
	 */
	public MerchantCouponGrantEntity copy() {
		return new MerchantCouponGrantEntity(this);
	}

	/** 发放记录ID */
	public static final String COL_ID = "id";

	/** [枚举]券类型：0-停车券-PARK、1-优惠券-DISCOUNT */
	public static final String COL_TYPE = "type";

	/** 商户优惠券ID */
	public static final String COL_MERCHANT_COUPON_ID = "merchant_coupon_id";

	/** 停车券申请ID */
	public static final String COL_PARK_APPLY_ID = "park_apply_id";

	/** 商户ID（冗余） */
	public static final String COL_MERCHANT_ID = "merchant_id";

	/** 会员ID */
	public static final String COL_MEMBER_ID = "member_id";

	/** 优惠券ID */
	public static final String COL_COUPON_ID = "coupon_id";

	/** 创建人（优惠券发放人） */
	public static final String COL_CREATED_BY = "created_by";

	/** 创建时间（优惠券发放时间） */
	public static final String COL_CREATED_TIME = "created_time";
}
